#include <iostream>
#include <cstdio>
#define  _CLASS_TYPE_(className)    #className

ConferenceRoom::Ptr ConferenceService::createConferenceRoom(const std::string& conferenceId, EventPoller::Ptr poller, const std::string &className)
{
    ConferenceRoom::Ptr room = nullptr;

    if (className == _CLASS_TYPE_(ConferenceRoom))
        room = std::make_shared<ConferenceRoom>(conferenceId, _redisWrapper, poller);
    else if (className == _CLASS_TYPE_(InterruptConferenceRoom))
        room = std::make_shared<InterruptConferenceRoom>(conferenceId, _redisWrapper, poller);
    else
    {
        LOG_ERROR("createConferenceRoom input param is unknown,className: %s", className.c_str());
        return room;
    }  
}

int main()
{
    ConferenceRoom::Ptr room = createConferenceRoom(conferenceId, EventPollerPool::defaultPool().getCurrentPoller(), _CLASS_TYPE_(ConferenceRoom));
}